package com.aaa.ssm.service.impl;

import com.aaa.ssm.dao.TScenicDao;
import com.aaa.ssm.entity.TScenic;
import com.aaa.ssm.service.TScenicService;
import com.aaa.ssm.util.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * @ fileName:TScenicServiceImpl
 * @ description:
 * @ createTime:2023/3/23 19:51
 * @ version:1.0.0
 */
@Service
public class TScenicServiceImpl implements TScenicService {
    @Resource   //按类型 依赖注入
    private TScenicDao tScenicDao;

    /**
     * 倒叙分页
     * @param page
     * @return
     */
    @Override
    public PageInfo queryAllA(Page<TScenic> page) {
        //设置页码和每页数量 --分页插件自带的方法-- PageHelper.startPage(页码,每页数量)
        PageHelper.startPage(page.getPageNo(),page.getPageSize());
        //实例化PageInfo, 把参数传入 获取参数
        //pageInfo 主要参数 total 总数量 pages 总页数 List<T> list 查询的记录
        return new PageInfo(tScenicDao.queryAllA());
    }

    @Override
    public PageInfo queryByAll(Page<TScenic> page) {
        //设置页码和每页数量 --分页插件自带的方法-- PageHelper.startPage(页码,每页数量)
        PageHelper.startPage(page.getPageNo(),page.getPageSize());
        //实例化PageInfo, 把参数传入 获取参数
        //pageInfo 主要参数 total 总数量 pages 总页数 List<T> list 查询的记录
        return new PageInfo(tScenicDao.queryByAll(page.getData()));
    }

    /**
     * 查询所有数据
     * @return
     */
    @Override
    public List<TScenic> queryAll() {
        return tScenicDao.queryAll();
    }

    @Override
    public int add(TScenic tScenic) {
        try {
            tScenicDao.add(tScenic);
            return 1;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return 0;
    }

    @Override
    public int update(TScenic tScenic) {
        try {
            tScenicDao.update(tScenic);
            return 1;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return 0;
    }

    @Override
    public int delete(int id) {

        return tScenicDao.delete(id);
    }
}
